package com.example.design.创建型设计模式.建造者模式;

// 建造者模式（Builder Pattern）是一种创建型设计模式，旨在使用简单的对象表示法构造复杂对象。它允许你用一步一步的方式构建一个对象，
// 适合于具有多个可选参数和复杂构建过程的情况。
public class BuilderMain {
    public static void main(String[] args) {
        CarBuilder carBuilder = new CarBuilder();

        Car car1 = carBuilder.setBrand("Tesla")
                .setModel("Model 3")
                .setYear(2022)
                .setColor("Red")
                .setElectric(true)
                .build();

        Car car2 = carBuilder.setBrand("Ford")
                .setModel("Mustang")
                .setYear(2021)
                .setColor("Blue")
                .setElectric(false)
                .build();

        System.out.println(car1);
        System.out.println(car2);



        Computer gamingPC = Computer.Builder.create()
                .setBrand("Alienware")
                .setCpu("Intel i9")
                .setMemory(32)
                .setStorage(1000)
                .setGpu("NVIDIA RTX 3080")
                .build();

        Computer officePC = Computer.Builder.create()
                .setBrand("Dell")
                .setCpu("Intel i5")
                .setMemory(16)
                .setStorage(512)
                .setGpu("Integrated")
                .build();

        System.out.println(gamingPC);
        System.out.println(officePC);
    }
}
